package ynu.edu.repository;

import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import ynu.edu.entity.PaymentEntity;

import java.util.List;
import java.util.Optional;

/**
 * 支付仓库接口
 */
@Repository
public interface PaymentRepository extends JpaRepository<PaymentEntity, Integer> {
    
    /**
     * 根据订单ID查询支付信息
     *
     * @param orderId 订单ID
     * @return 支付信息
     */
    Optional<PaymentEntity> findByOrderId(Integer orderId);
    
    /**
     * 根据用户ID查询支付记录
     *
     * @param userId 用户ID
     * @return 支付记录列表
     */
    List<PaymentEntity> findByUserId(String userId);
    
    /**
     * 根据用户ID和支付状态查询支付记录
     *
     * @param userId 用户ID
     * @param status 支付状态
     * @return 支付记录列表
     */
    List<PaymentEntity> findByUserIdAndStatus(String userId, Integer status);
    
    /**
     * 根据交易号查询支付信息
     *
     * @param transactionId 交易号
     * @return 支付信息
     */
    Optional<PaymentEntity> findByTransactionId(String transactionId);
} 